﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CBE.Model;
using CBE.ServiceLogic;
using Common.UI.Report;
using CBE.UI.Control.Views;
using CBE.UI.Control.Presenters;

namespace CBE.UI.Control
{
    public class ReporteVentasPorEmpleadoController : GenericReportController<ReporteVentasPorEmpleadoView, ReporteVentasPorEmpleadoCriteria, ReporteVentasPorEmpleadoServiceLogic>
    {
        public override string Title
        {
            get
            {
                return "Reporte ventas por empleado";
            }
        }

        protected override void CreateEntityPresentationModel()
        {
            this.ReportPresentationModel = new ReporteVentasPorEmpleadoPresentationModel(this.CreateFilterView(), this.CreateListView());
        }

        protected override Common.UI.Report.Views.FilterDataView CreateFilterDataView()
        {
            return new ReporteVentasPorEmpleadoFilterDataView();
        }

        protected override void AddColumnDefinitions()
        {
            this.ReportPresentationModel.AddColumnDefinition(ReporteVentasPorEmpleadoView.NombreApellidoEmpleadoPropertyName, "Nombre y Apellido");
            this.ReportPresentationModel.AddColumnDefinition(ReporteVentasPorEmpleadoView.NroDocumentoPropertyName, "Nro. Documento");
            this.ReportPresentationModel.AddColumnDefinition(ReporteVentasPorEmpleadoView.ServiciosPropertyName, "Servicios");
            this.ReportPresentationModel.AddColumnDefinition(ReporteVentasPorEmpleadoView.CantidadVentasPropertyName, "Cantidad total de ventas");
            this.ReportPresentationModel.AddColumnDefinition(ReporteVentasPorEmpleadoView.ImporteServiciosPropertyName, "Importe total de servicios");
        }
    }
}
